﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

using vi = AnasisIskatmani;
using vr = AnasisVarliklar;
namespace Anasis
{
    public partial class FrmSekreterYonet : Form
    {
        static int v=0;
        public FrmSekreterYonet()
        {
            InitializeComponent();
        }

        private void FrmSekreterYonet_Load(object sender, EventArgs e)
        {

            lstSekreterCalisanListesi.DataSource = vi.Calisan.calisanGetir(3);
            lstSekreterCalisanListesi.DisplayMember = "calisanTam";
            lstSekreterCalisanListesi.ValueMember = "calisan_id";

            ///sekreter ödeme
            ///
            cmbSekreterCalisanOdemeTur.DataSource = vi.OdemeTur.odemeTurGetir(0);
            cmbSekreterCalisanOdemeTur.DisplayMember = "odeme_tur";
            cmbSekreterCalisanOdemeTur.ValueMember = "odeme_tur_id";

            rbSekreterCalısanOdemeTum.Checked = true;
            dgSekreterCalisanOdemeleri.DataSource = vi.PersonelOdeme.personelOdemeGetirID_Tur(Convert.ToInt32(lstSekreterCalisanListesi.SelectedValue), OdemeSekliBelirle());
            
            v=1;
        
        }

        
        /// ////////////////////////////////////////////sekreter bilgi 
        private void calisanBilgileriniYukle(int calisanID)
        {
            vr.Calisan calisan = vi.Calisan.calisanGetirTekTek(calisanID);

           txtSisSekreterad.Text = calisan.Ad;
            txtSisSekreterEposta.Text = calisan.Eposta;
            txtSisSekreterEvAdresi.Text = calisan.EvAdresi;
           txtSisSekretermaas .Text = calisan.Maas.ToString();
            txtSisSekretersoyad.Text = calisan.Soyad;
            txtSisSekretertc.Text = calisan.TcNo;
           txtSisSekreterTelefon .Text = calisan.EvTel;
            

            if (calisan.Cinsiyet == 1)
            {
                rbtSisSekreterErkek.Checked = true;
            }
            else
                rbSisSekreterKadın.Checked = true;

        }

      




        private void btnSisSekreterekle_Click(object sender, EventArgs e)
        {
            if (!vi.Calisan.calisanVarmi(txtSisSekretertc.Text))
            {
                vr.Calisan calisan = new vr.Calisan();

                calisan.Ad = txtSisSekreterad.Text;
                calisan.Eposta = txtSisSekreterEposta.Text;
                calisan.EvAdresi = txtSisSekreterEvAdresi.Text;
                calisan.Maas = Convert.ToInt32(txtSisSekretermaas.Text);
                calisan.Soyad = txtSisSekretersoyad.Text;
                calisan.TcNo = txtSisSekretertc.Text;
                calisan.EvTel = txtSisSekreterTelefon.Text;
                calisan.CalisanTip1 = 3;

                if (rbtSisSekreterErkek.Checked)
                {
                    calisan.Cinsiyet = 1;
                }
                else
                    calisan.Cinsiyet = 0;

                if (vi.Calisan.calisanEkle(calisan))
                {
                    MessageBox.Show("calisan eklenmiştir.");

                    lstSekreterCalisanListesi.DataSource = vi.Calisan.calisanGetir(3);
                }
                else
                    MessageBox.Show("calisan eklenmemiştir.");
            }
            else
                MessageBox.Show("calisan daha önceden eklenmiştir");
        }

        private void btnSisSekreterGuncelle_Click(object sender, EventArgs e)
        {
            vr.Calisan calisan = new vr.Calisan();
            calisan.CalisanID = Convert.ToInt32(lstSekreterCalisanListesi.SelectedValue);
            calisan.Ad = txtSisSekreterad.Text;
            calisan.Eposta = txtSisSekreterEposta.Text;
            calisan.EvAdresi = txtSisSekreterEvAdresi.Text;
            calisan.Maas = Convert.ToInt32(txtSisSekretermaas.Text);
            calisan.Soyad = txtSisSekretersoyad.Text;
            calisan.TcNo = txtSisSekretertc.Text;
            calisan.EvTel = txtSisSekreterTelefon.Text;
            calisan.CalisanTip1 = 3;

            if (rbtSisSekreterErkek.Checked)
            {
                calisan.Cinsiyet = 1;
            }
            else
                calisan.Cinsiyet = 0;

            if (vi.Calisan.calisanGuncelle(calisan))
            {
                MessageBox.Show("calisan Güncellenmiştir.");

                lstSekreterCalisanListesi.DataSource = vi.Calisan.calisanGetir(3);
            }
            else
                MessageBox.Show("calisan Güncellenmemiştir.");
        }

        private void btnSisSekreterSil_Click(object sender, EventArgs e)
        {

        }


        /////////////////////////////////////////////////sekreter ödeme
        public int OdemeSekliBelirle()
        {

            if (rbSekreterCalısanOdemeTum.Checked == true)
            {
                return -1;
            }
            else if (rbSekreterCalısanOdemeMaas.Checked == true)
            {
                return 1;
            }
            else
                return 2;

        }

        private void linkLabel6_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
        {
            vr.PersonelOdeme personelodeme = new vr.PersonelOdeme();
            personelodeme.Calisan_id = Convert.ToInt32(lstSekreterCalisanListesi.SelectedValue);
            personelodeme.Miktar = txtSekreterCalısanOdemeMiktar.Text;
            personelodeme.Odeme_tur = Convert.ToInt32(cmbSekreterCalisanOdemeTur.SelectedValue);
            if (vi.PersonelOdeme.personelOdemeYap(personelodeme))
            {

                MessageBox.Show("Ödeme Yapılmıştır.");
                dgSekreterCalisanOdemeleri.DataSource = vi.PersonelOdeme.personelOdemeGetirID_Tur(Convert.ToInt32(lstSekreterCalisanListesi.SelectedValue), OdemeSekliBelirle());
            }
            else
                MessageBox.Show("Ödeme Yapılamamıştır.");
        }


        private void rbSekreterCalısanOdemeTum_CheckedChanged(object sender, EventArgs e)
        {
            dgSekreterCalisanOdemeleri.DataSource = vi.PersonelOdeme.personelOdemeGetirID_Tur(Convert.ToInt32(lstSekreterCalisanListesi.SelectedValue), OdemeSekliBelirle());
        }

        private void rbSekreterCalısanOdemeMaas_CheckedChanged(object sender, EventArgs e)
        {
            dgSekreterCalisanOdemeleri.DataSource = vi.PersonelOdeme.personelOdemeGetirID_Tur(Convert.ToInt32(lstSekreterCalisanListesi.SelectedValue), OdemeSekliBelirle());
        }

        private void rbSekreterCalısanOdemeAvans_CheckedChanged(object sender, EventArgs e)
        {
            dgSekreterCalisanOdemeleri.DataSource = vi.PersonelOdeme.personelOdemeGetirID_Tur(Convert.ToInt32(lstSekreterCalisanListesi.SelectedValue), OdemeSekliBelirle());
        }

        private void linkLabel7_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
        {
            vr.PersonelOdeme personelOdeme = new vr.PersonelOdeme();
            personelOdeme.Personel_odeme_id = Convert.ToInt32(dgSekreterCalisanOdemeleri.SelectedRows[0].Cells[0].Value.ToString());
            personelOdeme.Miktar = dgSekreterCalisanOdemeleri.SelectedRows[0].Cells[4].Value.ToString();
            personelOdeme.Odeme_tarih = dgSekreterCalisanOdemeleri.SelectedRows[0].Cells[5].Value.ToString();
            if (vi.PersonelOdeme.personelOdemeGuncelle(personelOdeme))
            {

                MessageBox.Show("Ödeme Güncellenmesi Yapılmıştır.");
            }
            else
                MessageBox.Show("Ödeme Güncellenmesi Yapılamamıştır.");


        }

        private void linkLabel8_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
        {
            if (vi.PersonelOdeme.personelOdemeSil(Convert.ToInt32(dgSekreterCalisanOdemeleri.SelectedRows[0].Cells[0].Value.ToString())))
            {

                MessageBox.Show("Ödeme silinmiştir.");
            }
            else
                MessageBox.Show("Ödeme silinmemiştir.");
        }

        private void lstSekreterCalisanListesi_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (v != 0)
            {
                calisanBilgileriniYukle(Convert.ToInt32(lstSekreterCalisanListesi.SelectedValue));
                dgSekreterCalisanOdemeleri.DataSource = vi.PersonelOdeme.personelOdemeGetirID_Tur(Convert.ToInt32(lstSekreterCalisanListesi.SelectedValue), OdemeSekliBelirle());
            }
        }

        private void FrmSekreterYonet_FormClosing(object sender, FormClosingEventArgs e)
        {
            v = 0;
        }

        
    }
}
